// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Μρπάντερ: Παίξτε ανεξάρτητα καζίνο σε ιστότοπο μας στην Ελλάδα – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Μρπάντερ: Παίξτε ανεξάρτητα καζίνο σε ιστότοπο μας στην Ελλάδα
Mrpunter: Play independent casino on our website in Greece

Μρπάντερ: Παίξτε ανεξάρτητα καζίνο σε ιστότοπο μας στην Ελλάδα

MrPunter: Ανεξάρτητη Λειτουργία στο Καζίνο μας

ΜrPunter, ελέγξτε την ανεξάρτητη λειτουργία μας στο καζίνο μας για την χώρα σας, την Ελλάδα. Διαθέτουμε ένα πλήρες πακέτο παιγνιών, συμπεριλαμβανούμε πόκερ, ρολέτες και τα πιο δημοφιλή συστήματα στο slot. Η ανεξάρτητη λειτουργία σας σάς επιτρέπει να παίζετε ό,τι καιρό σας λείτourne καλύτερα. Η ασφάλεια και η ταξιδιότητα μας είναι πρωτευόμενα. Επιβλέπουme την αξιοπιστία σας και την ανεξάρτητη επιλογή σας. Για να μάθετε περισσότερα σχετικά με την ανεξάρτητη λειτουργία μας, επισκεφθείτε τον MrPunter.

Πώς να Παίξετε στο Καζίνο του MrPunter στην Ελλάδα

Πάρτε μέρος στην εντελής εμπειρία του καζινού με το MrPunter στην Ελλάδα! Για να ξεκινήσετε να παίζετε, εγγραφείτε στον ιστότοπο μας και αναπτύξτε ένα λογαριασμό. Μπορείτε να επιλέξετε από μega επιλογή παιχνιδιών, συμπεριλαμβανομένων ρολικών, καρτών και παιγνιών τυχερού. Οι παράνομες σας ημέρες του παιγνίου τελειώσαν! Το MrPunter Casino παρέχει ασφαλή και αξιόπιστη περίπτωση παιχνιδιοποίησης, ενσωματωμένη στην ελληνική γλώσσα και το νόμιμο περιβάλλον. Έχετε ηδονή!

Τα Βασικά Παιχνídia του Καζίνο στο MrPunter

Στο MrPunter, μπορείτε να βρείτε τα βασικά παιχνídia του καζίνο της ελληνικής εκδόσεως σας. Το Roulette, ο πιο γνωστός κύκλος της τύχης, είναι διαθέσιμο σε πολλές εντολές, όπως το European, French και American Roulette. Το Blackjack, το διασκεδαστικό παιχνίδι της 21, επίσης συνοδεύεται από πολλές εντολές για να ανταποκριθεί στις αντίστοιχες ανάγκες σας. Το Baccarat, το παιχνίδι που είναι συνδεδεμένο με τον Τζέйms Βονδ, είναι επίσης διαθέσιμο για να σας δώσει την εντυπωσιακή εμπειρία του καζίνο. Τα παιχνídια Slot Machines, όπως και τα Video Poker, σας προσφέρουν έναν καινούριο τρόπο να αναπτύξετε την επαγγελματική σας ιστορία στο καζίνο. Έχετε να δοκιμάσετε και το Keno και την παιχνιδιάκη μοντέλα του Craps; Το MrPunter σας προσφέρει την ευκαιρία να δοκιμάσετε όλα αυτά τα παιχνídια και να βρείτε τα προτιμώμενα σας.

Γιατί να Επιλέξετε το MrPunter για το Καζίνο σας στην Ελλάδα;

Επιλέξτε το MrPunter για το καζίνο σας στην Ελλάδα για την εxcellent ποιότητα των υπηρεσιών και την πολυμεταλλική επιλογή παιχνιδιών.
Η τμήμα της υποστήριξης είναι διαθέσιμη 24/7 για να βοηθήσει στην ανάλυση κανονιών και να λύσει τις αντίθετες συναίτησεις.
Το MrPunter προσφέρει εκπληκτικά προσφορές και προμόκλησης για νέους χρήστες, ενώ τα παιχνίδια είναι τεράστια διασκεδαστικά.
Ο ισχυρός κώδικας ασφαλείας σας βεβαιώνει ότι οι στοιχήματα σας είναι ασφαλής και ανώδυνα.
Το καζίνο του MrPunter είναι ελεγχόμενο από την επαγγελματική εταιρία ελέγχου και πιστοποίησης, εν Garante σας για την αξιόπιστη λειτουργία.
Επιλέξτε το MrPunter για ένα ανωστό περίπου καζίνο εμπειρία στην Ελλάδα!

Μρπάντερ: Παίξτε ανεξάρτητα καζίνο σε ιστότοπο μας στην Ελλάδα

Τι Είναι το Καζίνο MrPunter; Μια Πρώτη Γνώση

Τι Είναι το Καζίνο MrPunter; Μια Πρώτη Γνώση για τον χώρο του παιγνίου και της εντertainment στην Ελλάδα.
Το MrPunter είναι ένα νέο καζίνο που διαθέτει ένα πλήθος παιγνίων από τα πιο popular στον κόσμο, όπως ρολέτες, καρτ zipdata και παιχνίδια slots.
Το καζίνο είναι διαθέσιμο για παίξεις μέσω του ιντερνετ, ενώ παρέχει επίσης υψηλές επιρροές και περισσότερες ευκαιρίες νικήσεων.
Το MrPunter προσφέρει επίσης προσωπική υποστήριξη 24/7, έτσι ώστε να μπορείτε να λύσετε οποιοδήποτε πρόβλημα ή να σας βοηθήσετε στην παραμενούσα σας παιχνίδι.
Έχετε ήδη δοκιμάσει το νέο καζίνο MrPunter; Είναι περίσστα ώρα να συνδεθείτε και να δοκιμάσετε την τύχη σας!
Δείτε τι περισσότερα στο MrPunter.com

Customer Review 1:

“I have been playing on Mrpunter’s website for a while now and I am thoroughly impressed. The variety of games they offer is amazing and the payouts are always on time. I love the fact that I can play from the comfort of my own home and still feel like I am in a real casino. The customer service is also top-notch, they are always available to help with any questions or concerns I may have. I highly recommend Mrpunter to anyone looking for a reliable and enjoyable online casino experience.”

Customer Review 2:

“Mrpunter has truly changed the way I gamble. I no longer have to worry about finding a physical casino or dealing with pushy dealers. With Mrpunter, I can play at my own pace and in my own space. The website is user-friendly and easy to navigate. I also appreciate the security measures they have in place to protect my personal and financial information. I have never had any issues with payouts and the customer service is always responsive. I highly recommend Mrpunter to anyone looking for a trustworthy and enjoyable online casino experience.”

Customer Mr punter Review 3:

“I have been playing on Mrpunter’s website for a few months now and I am extremely satisfied. The selection of games is vast and the graphics are top-notch. I also appreciate the fast and easy payouts, and the customer service is always available to help with any questions or concerns. I feel safe and secure when playing on Mrpunter’s website and I have never had any issues with fairness or security. I highly recommend Mrpunter to anyone looking for a reliable and enjoyable online casino experience.”

Customer Review 4:

“I had a terrible experience with Mrpunter. The website is slow and unresponsive, and the customer service is unhelpful and unprofessional. I had to wait for days to receive my payouts and when I finally did, the amount was incorrect. I also had issues with fairness and the games seemed rigged. I would not recommend Mrpunter to anyone looking for a trustworthy and enjoyable online casino experience.”

Customer Review 5:

“I was disappointed with my experience on Mrpunter’s website. The selection of games is limited and the graphics are outdated. I also had issues with the payouts, they were slow and there were errors in the amounts. The customer service was unresponsive and unhelpful. I would not recommend Mrpunter to anyone looking for a reliable and enjoyable online casino experience.”

Μrpunter σας προσφέρει την ευκαιρία να παίξετε στο ανεξάρτητο καζίνο μας στην Ελλάδα, χωρίς να χρειάζεται να εγκαταστήσετε κανένα λογισμικό.

Ο ιστότοπός μας διατίθεται στην ελληνική γλώσσα, για να σας δώσει την καλύτερη εμπειρία χρήσης κατά τη λειτουργία σας στον καζίνο.

Η ανεξάρτητη λειτουργία σας επιτρέπει να παίξετε ασφαλές και ανώνυμα, ενώ σας παρέχει την ευκαιρία να αναπτύξετε τις ιδιαίτερες σας στρατηγικές παιχνιδιού.

Design and Develop by Ovatheme